home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Magnum One
/
Magnum One (Mid-American Digital) (Disc Manufacturing).iso
/
d27
/
dsplstjb.arc
/
DSPLSTJB.CLP
next >
Wrap
Text File
|
1991-12-04
|
3KB
|
49 lines
DSPLSTJOB: PGM PARM(&FULLJOB &OUTPUT) /* program name +
DSPLSTJOB - command processing pgm for +
command DSPLSTJOB - display last job in a +
group of duplicate jobs */
DCL VAR(&FULLJOB) TYPE(*CHAR) LEN(26)
DCL VAR(&OUTPUT) TYPE(*CHAR) LEN(5)
DCL VAR(&JOB) TYPE(*CHAR) LEN(10)
DCL VAR(&USER) TYPE(*CHAR) LEN(10)
DCL VAR(&JOBNBR) TYPE(*CHAR) LEN(6)
DCL VAR(&MSGUSER) TYPE(*CHAR) LEN(10)
DCL VAR(&HIGHEST) TYPE(*CHAR) LEN(6)
DCL VAR(&MSGKEY) TYPE(*CHAR) LEN(4)
DCL VAR(&MSGID) TYPE(*CHAR) LEN(7)
DCL VAR(&MSGDTA) TYPE(*CHAR) LEN(100)
MONMSG MSGID(CPF0000) EXEC(GOTO CMDLBL(ERROR))
CHGVAR VAR(&JOB) VALUE(%SST(&FULLJOB 1 10))
CHGVAR VAR(&USER) VALUE(%SST(&FULLJOB 11 10))
CHGVAR VAR(&JOBNBR) VALUE(%SST(&FULLJOB 21 6))
IF COND(&USER *EQ ' ') THEN(CHGVAR +
VAR(&USER) VALUE('*N'))
IF COND(&JOBNBR *EQ ' ') THEN(CHGVAR +
VAR(&JOBNBR) VALUE('*N'))
DSPJOB JOB(&JOB.&USER.&JOBNBR) OUTPUT(&OUTPUT)
MONMSG MSGID(CPF1069) EXEC(GOTO CMDLBL(DUPS))
RETURN
DUPS: RCVMSG MSGTYPE(*DIAG) RMV(*NO) KEYVAR(&MSGKEY) +
MSGDTA(&MSGDTA) MSGID(&MSGID)
IF COND(&MSGID *EQ 'CPF0906') THEN(DO)
RMVMSG MSGKEY(&MSGKEY)
IF COND(%SST(&MSGDTA 21 6) *GT &HIGHEST) THEN(DO)
CHGVAR VAR(&HIGHEST) VALUE(%SST(&MSGDTA 21 6))
CHGVAR VAR(&MSGUSER) VALUE(%SST(&MSGDTA 11 10))
ENDDO
ENDDO
IF COND(&MSGID *NE ' ') THEN(GOTO +
CMDLBL(DUPS))
DSPJOB: DSPJOB JOB(&JOB.&MSGUSER.&HIGHEST) OUTPUT(&OUTPUT)
RETURN
ERROR: RCVMSG MSGTYPE(*DIAG) MSGDTA(&MSGDTA) MSGID(&MSGID)
IF COND(&MSGID *EQ ' ') THEN(GOTO +
CMDLBL(ESCAPE))
SNDPGMMSG MSGID(&MSGID) MSGF(QCPFMSG) MSGDTA(&MSGDTA) +
MSGTYPE(*DIAG)
GOTO CMDLBL(ERROR)
ESCAPE: RCVMSG MSGTYPE(*EXCP) MSGDTA(&MSGDTA) MSGID(&MSGID)
SNDPGMMSG MSGID(&MSGID) MSGF(QCPFMSG) MSGDTA(&MSGDTA) +
MSGTYPE(*ESCAPE)
ENDPGM